#ifndef Kernel_Variable_h
#define Kernel_Variable_h

#include "KernelModule.h"
#include <string>

namespace Kernel
{
    /**A Variable stands for the meta data of a continuous memory chunk.*/
    class KERNEL_EXPORT Variable
    {
    public:
      Variable (const std::string& name);
      ~Variable ();

      const std::string& GetName() const
      {
          return myName;
      }

      std::size_t GetSize () const
      {
          return mySize;
      }

    protected:
      std::string myName;
      std::size_t mySize;
    };
}  // namespace Kernel

#endif  // Kernel_Variable_h